package net.wexoo.onlinedivelog.dal;

import java.util.List;

import org.apache.wicket.extensions.markup.html.repeater.util.SortParam;

/**
 * IDAO.java
 * 
 * @author wexoo
 */
public interface IDAO<T> {

  public abstract T saveOrUpdate(T entity);

  public abstract boolean delete(T entity);

  public abstract List<T> getAll();

  public abstract List<T> getAll(SortParam sortParam, Integer first, Integer count);

  public abstract T getBeanById(int id);

  public abstract Long getCount();

  public void setClazz(final Class<T> clazzToSet);

  public abstract String getBeanClassName();

}